/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package negocio;

import dao.DAO;
import dao.exceptions.NonexistentEntityException;
import dao.exceptions.PreexistingEntityException;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;
import modelo.Lei;

/**
 *
 * @author emersonmx
 */
public class NegocioCadastroLei implements Negocio {

  private DAO dao;

  public DAO getDAO() {
    return dao;
  }

  public void setDAO(DAO dao) {
    this.dao = dao;
  }

  public void inserir(Object o) {
    dao.inserir(o);
  }

  public void alterar(Object o) throws NonexistentEntityException, Exception {
    dao.alterar(o);
  }

  public void excluir(Long id) throws NonexistentEntityException {
    throw new UnsupportedOperationException("Not supported yet.");
  }

  public List pesquisar() {
    List<Object> resultado = new ArrayList<Object>();
    resultado = dao.pesquisar();
    return resultado;
  }

  public List pesquisar(Object o) {
    List<Object> resultado = new ArrayList<Object>();
    resultado = dao.pesquisar(o);
    return resultado;
  }

  public List pesquisar(int resultadosMaximo, int primeiroResultado) {
    throw new UnsupportedOperationException("Not supported yet.");
  }

  public List pesquisar(boolean tudo, int resultadosMaximo, int primeiroResultado) {
    throw new UnsupportedOperationException("Not supported yet.");
  }

  public Object pesquisar(Long id) {
    throw new UnsupportedOperationException("Not supported yet.");
  }

  public int contar() {
    throw new UnsupportedOperationException("Not supported yet.");
  }

  public boolean revogar(String a){
      return (dao.revogar(a));
  }

  public boolean pesquisarObjetoExistente(Long id) {
    Lei l = (Lei)dao.pesquisar(id);
      if(l.getId() == null){
          return false;
      }else{
        return true;
      }
    }

  public boolean numeroLeiUnica(String numeroLei) {
     return dao.numeroLeiUnica(numeroLei);
  }

  public boolean existObject(Lei l) {
       List res = dao.pesquisar(l);
       return !res.isEmpty();
    }
}
